// 持久层
// 引入postModel模块
const postModel = require('../model/postModel');

// 新增帖子
module.exports.insert = async function (post) {
    return await postModel.create(post);
};

// 删除帖子
module.exports.delete = async function (id) {
    return await postModel.deleteOne({
        _id: id
    });
};

// 查询帖子
module.exports.find = async function (page, searchParams) {
    // 对page进行解构
    let {current,pageSize} = page;
    // 根据查询条件获取总数
    let total = await postModel.countDocuments(searchParams);
    // 根据查询条件获取具体数量的数据
    let data = await postModel.find(searchParams).limit(pageSize).skip((current - 1) * pageSize);
    // 返回当前页面、每页显示数量、总数、具体数据
    return {
        current,
        pageSize,
        total,
        rows: data
    };
};

// 根据id查询帖子
module.exports.findById = async function(id) {
    return await postModel.findById(id);
}

// 修改帖子
module.exports.update = async function (post) {
    return await postModel.updateOne({
        _id: post._id
    }, post);
};

module.exports.findAll = async function () {
  return await postModel.find();
}